// Converted from: ../../examples/obj/torus/Torus.obj
//  vertices: 576
//  faces: 576 
//  materials: 1
//
//  Generated with OBJ -> Three.js converter
//  http://github.com/alteredq/three.js/blob/master/utils/exporters/convert_obj_threejs.py

var Torus = function ( urlbase ) {
    var scope = this;

    THREE.Geometry.call(this);

    var materials = [	{
	"a_dbg_color" : 0xeeeeee,
	"a_dbg_index" : 0,
	"a_dbg_name" : "(null)"
	}];

    init_materials();
    
    var normals = [[1.000000,0.000000,0.000000],[0.991424,0.000000,-0.130497],[0.858547,0.500107,-0.113010],[0.865963,0.500107,0.000000],[0.495590,0.866085,-0.065249],[0.499863,0.866085,0.000000],[0.000000,1.000000,0.000000],[-0.495590,0.866085,0.065249],[-0.499863,0.866085,0.000000],[-0.858547,0.500107,0.113010],[-0.865963,0.500107,0.000000],[-0.991424,0.000000,0.130497],[-0.999969,0.000000,0.000000],[-0.858547,-0.500107,0.113010],[-0.865963,-0.500107,0.000000],[-0.495590,-0.866085,0.065249],[-0.499863,-0.866085,0.000000],[0.000000,-1.000000,0.000000],[0.495590,-0.866085,-0.065249],[0.499863,-0.866085,0.000000],[0.858547,-0.500107,-0.113010],[0.865963,-0.500107,0.000000],[0.965911,0.000000,-0.258797],[0.836451,0.500107,-0.224128],[0.482833,0.866085,-0.129368],[-0.482833,0.866085,0.129368],[-0.836451,0.500107,0.224097],[-0.965911,0.000000,0.258797],[-0.836451,-0.500107,0.224128],[-0.482833,-0.866085,0.129368],[0.482833,-0.866085,-0.129368],[0.836451,-0.500107,-0.224128],[0.923856,0.000000,-0.382672],[0.800043,0.500107,-0.331370],[0.461837,0.866085,-0.191290],[-0.461837,0.866085,0.191290],[-0.800043,0.500107,0.331370],[-0.923856,0.000000,0.382672],[-0.800043,-0.500107,0.331370],[-0.461837,-0.866085,0.191290],[0.461837,-0.866085,-0.191290],[0.800043,-0.500107,-0.331370],[0.866024,0.000000,-0.499985],[0.749931,0.500107,-0.432966],[0.432905,0.866085,-0.249916],[-0.432905,0.866085,0.249916],[-0.749931,0.500107,0.432966],[-0.866024,0.000000,0.499985],[-0.749931,-0.500107,0.432966],[-0.432905,-0.866085,0.249916],[0.432905,-0.866085,-0.249916],[0.749931,-0.500107,-0.432966],[0.793329,0.000000,-0.608753],[0.687002,0.500107,-0.527146],[0.396588,0.866085,-0.304300],[-0.396588,0.866085,0.304300],[-0.687002,0.500107,0.527146],[-0.793329,0.000000,0.608753],[-0.687002,-0.500107,0.527146],[-0.396588,-0.866085,0.304300],[0.396588,-0.866085,-0.304300],[0.687002,-0.500107,-0.527146],[0.707083,0.000000,-0.707083],[0.612323,0.500107,-0.612323],[0.353465,0.866085,-0.353465],[-0.353465,0.866085,0.353465],[-0.612323,0.500107,0.612323],[-0.707083,0.000000,0.707083],[-0.612323,-0.500107,0.612323],[-0.353465,-0.866085,0.353465],[0.353465,-0.866085,-0.353465],[0.612323,-0.500107,-0.612323],[0.608753,0.000000,-0.793329],[0.527146,0.500107,-0.687002],[0.304300,0.866085,-0.396588],[-0.304300,0.866085,0.396588],[-0.527146,0.500107,0.687002],[-0.608753,0.000000,0.793329],[-0.527146,-0.500107,0.687002],[-0.304300,-0.866085,0.396588],[0.304300,-0.866085,-0.396588],[0.527146,-0.500107,-0.687002],[0.499985,0.000000,-0.866024],[0.432966,0.500107,-0.749931],[0.249916,0.866085,-0.432905],[-0.249916,0.866085,0.432905],[-0.432966,0.500107,0.749931],[-0.499985,0.000000,0.866024],[-0.432966,-0.500107,0.749931],[-0.249916,-0.866085,0.432905],[0.249916,-0.866085,-0.432905],[0.432966,-0.500107,-0.749931],[0.382672,0.000000,-0.923856],[0.331370,0.500107,-0.800043],[0.191290,0.866085,-0.461837],[-0.191290,0.866085,0.461837],[-0.331370,0.500107,0.800043],[-0.382672,0.000000,0.923856],[-0.331370,-0.500107,0.800043],[-0.191290,-0.866085,0.461837],[0.191290,-0.866085,-0.461837],[0.331370,-0.500107,-0.800043],[0.258797,0.000000,-0.965911],[0.224097,0.500107,-0.836451],[0.129368,0.866085,-0.482833],[-0.129368,0.866085,0.482833],[-0.224097,0.500107,0.836451],[-0.258797,0.000000,0.965911],[-0.224128,-0.500107,0.836451],[-0.129368,-0.866085,0.482833],[0.129368,-0.866085,-0.482833],[0.224097,-0.500107,-0.836451],[0.130497,0.000000,-0.991424],[0.113010,0.500107,-0.858547],[0.065249,0.866085,-0.495590],[-0.065249,0.866085,0.495590],[-0.113010,0.500107,0.858547],[-0.130497,0.000000,0.991424],[-0.113010,-0.500107,0.858547],[-0.065249,-0.866085,0.495590],[0.065249,-0.866085,-0.495590],[0.113010,-0.500107,-0.858547],[0.000000,0.000000,-1.000000],[0.000000,0.500107,-0.865963],[0.000000,0.866085,-0.499863],[0.000000,0.866085,0.499863],[0.000000,0.500107,0.865963],[0.000000,0.000000,1.000000],[0.000000,-0.500107,0.865963],[0.000000,-0.866085,0.499863],[0.000000,-0.866085,-0.499863],[0.000000,-0.500107,-0.865963],[-0.130497,0.000000,-0.991424],[-0.113010,0.500107,-0.858547],[-0.065249,0.866085,-0.495590],[0.065249,0.866085,0.495590],[0.113010,0.500107,0.858547],[0.130497,0.000000,0.991424],[0.113010,-0.500107,0.858547],[0.065249,-0.866085,0.495590],[-0.065249,-0.866085,-0.495590],[-0.113010,-0.500107,-0.858547],[-0.258797,0.000000,-0.965911],[-0.224097,0.500107,-0.836451],[-0.129368,0.866085,-0.482833],[0.129368,0.866085,0.482833],[0.224097,0.500107,0.836451],[0.258797,0.000000,0.965911],[0.224097,-0.500107,0.836451],[0.129368,-0.866085,0.482833],[-0.129368,-0.866085,-0.482833],[-0.224097,-0.500107,-0.836451],[-0.382672,0.000000,-0.923856],[-0.331370,0.500107,-0.800043],[-0.191290,0.866085,-0.461837],[0.191290,0.866085,0.461837],[0.331370,0.500107,0.800043],[0.382672,0.000000,0.923856],[0.331370,-0.500107,0.800043],[0.191290,-0.866085,0.461837],[-0.191290,-0.866085,-0.461837],[-0.331370,-0.500107,-0.800043],[-0.499985,0.000000,-0.866024],[-0.432966,0.500107,-0.749931],[-0.249916,0.866085,-0.432905],[0.249916,0.866085,0.432905],[0.432966,0.500107,0.749931],[0.499985,0.000000,0.866024],[0.432966,-0.500107,0.749931],[0.249916,-0.866085,0.432905],[-0.249916,-0.866085,-0.432905],[-0.432966,-0.500107,-0.749931],[-0.608753,0.000000,-0.793329],[-0.527146,0.500107,-0.687002],[-0.304300,0.866085,-0.396588],[0.304300,0.866085,0.396588],[0.527146,0.500107,0.687002],[0.608753,0.000000,0.793329],[0.527146,-0.500107,0.687002],[0.304300,-0.866085,0.396588],[-0.304300,-0.866085,-0.396588],[-0.527146,-0.500107,-0.687002],[-0.707083,0.000000,-0.707083],[-0.612323,0.500107,-0.612323],[-0.353465,0.866085,-0.353465],[0.353465,0.866085,0.353465],[0.612323,0.500107,0.612323],[0.707083,0.000000,0.707083],[0.612323,-0.500107,0.612323],[0.353465,-0.866085,0.353465],[-0.353465,-0.866085,-0.353465],[-0.612323,-0.500107,-0.612323],[-0.793329,0.000000,-0.608753],[-0.687002,0.500107,-0.527146],[-0.396588,0.866085,-0.304300],[0.396588,0.866085,0.304300],[0.687002,0.500107,0.527146],[0.793329,0.000000,0.608753],[0.687002,-0.500107,0.527146],[0.396588,-0.866085,0.304300],[-0.396588,-0.866085,-0.304300],[-0.687002,-0.500107,-0.527146],[-0.866024,0.000000,-0.499985],[-0.749931,0.500107,-0.432966],[-0.432905,0.866085,-0.249916],[0.432905,0.866085,0.249916],[0.749931,0.500107,0.432966],[0.866024,0.000000,0.499985],[0.749931,-0.500107,0.432966],[0.432905,-0.866085,0.249916],[-0.432905,-0.866085,-0.249916],[-0.749931,-0.500107,-0.432966],[-0.923856,0.000000,-0.382672],[-0.800043,0.500107,-0.331370],[-0.461837,0.866085,-0.191290],[0.461837,0.866085,0.191290],[0.800043,0.500107,0.331370],[0.923856,0.000000,0.382672],[0.800043,-0.500107,0.331370],[0.461837,-0.866085,0.191290],[-0.461837,-0.866085,-0.191290],[-0.800043,-0.500107,-0.331370],[-0.965911,0.000000,-0.258797],[-0.836451,0.500107,-0.224128],[-0.482833,0.866085,-0.129368],[0.482833,0.866085,0.129368],[0.836451,0.500107,0.224128],[0.965911,0.000000,0.258797],[0.836451,-0.500107,0.224128],[0.482833,-0.866085,0.129368],[-0.482833,-0.866085,-0.129368],[-0.836451,-0.500107,-0.224128],[-0.991424,0.000000,-0.130497],[-0.858547,0.500107,-0.113010],[-0.495590,0.866085,-0.065249],[0.495590,0.866085,0.065249],[0.858547,0.500107,0.113010],[0.991424,0.000000,0.130497],[0.858547,-0.500107,0.113010],[0.495590,-0.866085,0.065249],[-0.495590,-0.866085,-0.065249],[-0.858547,-0.500107,-0.113010],[-1.000000,0.000000,0.000000],[-0.836451,0.500107,0.224128],[-0.224097,-0.500107,0.836451],[0.000000,0.000000,-0.999969],[-0.836451,0.500107,-0.224097]];

	v(1.250000,-0.000000,-0.000000);
	v(1.216506,0.125000,-0.000000);
	v(1.125000,0.216506,-0.000000);
	v(1.000000,0.250000,-0.000000);
	v(0.875000,0.216506,-0.000000);
	v(0.783493,0.125000,-0.000000);
	v(0.750000,-0.000000,-0.000000);
	v(0.783493,-0.125000,-0.000000);
	v(0.875000,-0.216506,-0.000000);
	v(1.000000,-0.250000,-0.000000);
	v(1.125000,-0.216506,-0.000000);
	v(1.216506,-0.125000,-0.000000);
	v(1.239306,-0.000000,-0.163157);
	v(1.206099,0.125000,-0.158786);
	v(1.115375,0.216506,-0.146842);
	v(0.991445,0.250000,-0.130526);
	v(0.867514,0.216506,-0.114210);
	v(0.776790,0.125000,-0.102266);
	v(0.743583,-0.000000,-0.097894);
	v(0.776790,-0.125000,-0.102266);
	v(0.867514,-0.216506,-0.114210);
	v(0.991445,-0.250000,-0.130526);
	v(1.115375,-0.216506,-0.146842);
	v(1.206099,-0.125000,-0.158786);
	v(1.207407,-0.000000,-0.323523);
	v(1.175055,0.125000,-0.314855);
	v(1.086666,0.216506,-0.291171);
	v(0.965925,0.250000,-0.258819);
	v(0.845185,0.216506,-0.226466);
	v(0.756796,0.125000,-0.202783);
	v(0.724444,-0.000000,-0.194114);
	v(0.756796,-0.125000,-0.202783);
	v(0.845185,-0.216506,-0.226466);
	v(0.965925,-0.250000,-0.258819);
	v(1.086666,-0.216506,-0.291171);
	v(1.175055,-0.125000,-0.314855);
	v(1.154849,-0.000000,-0.478354);
	v(1.123905,0.125000,-0.465537);
	v(1.039364,0.216506,-0.430519);
	v(0.923879,0.250000,-0.382683);
	v(0.808394,0.216506,-0.334848);
	v(0.723853,0.125000,-0.299830);
	v(0.692909,-0.000000,-0.287012);
	v(0.723853,-0.125000,-0.299830);
	v(0.808394,-0.216506,-0.334848);
	v(0.923879,-0.250000,-0.382683);
	v(1.039364,-0.216506,-0.430519);
	v(1.123905,-0.125000,-0.465537);
	v(1.082531,-0.000000,-0.625000);
	v(1.053525,0.125000,-0.608253);
	v(0.974278,0.216506,-0.562500);
	v(0.866025,0.250000,-0.500000);
	v(0.757772,0.216506,-0.437500);
	v(0.678525,0.125000,-0.391747);
	v(0.649519,-0.000000,-0.375000);
	v(0.678525,-0.125000,-0.391746);
	v(0.757772,-0.216506,-0.437500);
	v(0.866025,-0.250000,-0.500000);
	v(0.974278,-0.216506,-0.562500);
	v(1.053525,-0.125000,-0.608253);
	v(0.991691,-0.000000,-0.760951);
	v(0.965119,0.125000,-0.740562);
	v(0.892522,0.216506,-0.684856);
	v(0.793353,0.250000,-0.608761);
	v(0.694184,0.216506,-0.532666);
	v(0.621587,0.125000,-0.476960);
	v(0.595015,-0.000000,-0.456571);
	v(0.621587,-0.125000,-0.476960);
	v(0.694184,-0.216506,-0.532666);
	v(0.793353,-0.250000,-0.608761);
	v(0.892522,-0.216506,-0.684856);
	v(0.965119,-0.125000,-0.740562);
	v(0.883883,-0.000000,-0.883883);
	v(0.860199,0.125000,-0.860200);
	v(0.795495,0.216506,-0.795495);
	v(0.707106,0.250000,-0.707107);
	v(0.618718,0.216506,-0.618718);
	v(0.554013,0.125000,-0.554013);
	v(0.530330,-0.000000,-0.530330);
	v(0.554013,-0.125000,-0.554013);
	v(0.618718,-0.216506,-0.618718);
	v(0.707106,-0.250000,-0.707107);
	v(0.795495,-0.216506,-0.795495);
	v(0.860199,-0.125000,-0.860200);
	v(0.760951,-0.000000,-0.991691);
	v(0.740562,0.125000,-0.965119);
	v(0.684856,0.216506,-0.892522);
	v(0.608761,0.250000,-0.793353);
	v(0.532666,0.216506,-0.694184);
	v(0.476960,0.125000,-0.621587);
	v(0.456571,-0.000000,-0.595015);
	v(0.476960,-0.125000,-0.621587);
	v(0.532666,-0.216506,-0.694184);
	v(0.608761,-0.250000,-0.793353);
	v(0.684856,-0.216506,-0.892522);
	v(0.740562,-0.125000,-0.965119);
	v(0.625000,-0.000000,-1.082531);
	v(0.608253,0.125000,-1.053525);
	v(0.562500,0.216506,-0.974278);
	v(0.500000,0.250000,-0.866025);
	v(0.437500,0.216506,-0.757772);
	v(0.391746,0.125000,-0.678525);
	v(0.375000,-0.000000,-0.649519);
	v(0.391746,-0.125000,-0.678525);
	v(0.437500,-0.216506,-0.757772);
	v(0.500000,-0.250000,-0.866025);
	v(0.562500,-0.216506,-0.974278);
	v(0.608253,-0.125000,-1.053525);
	v(0.478354,-0.000000,-1.154849);
	v(0.465537,0.125000,-1.123905);
	v(0.430518,0.216506,-1.039364);
	v(0.382683,0.250000,-0.923879);
	v(0.334848,0.216506,-0.808394);
	v(0.299830,0.125000,-0.723853);
	v(0.287012,-0.000000,-0.692909);
	v(0.299830,-0.125000,-0.723853);
	v(0.334848,-0.216506,-0.808394);
	v(0.382683,-0.250000,-0.923879);
	v(0.430518,-0.216506,-1.039364);
	v(0.465537,-0.125000,-1.123905);
	v(0.323523,-0.000000,-1.207407);
	v(0.314855,0.125000,-1.175055);
	v(0.291171,0.216506,-1.086666);
	v(0.258819,0.250000,-0.965926);
	v(0.226466,0.216506,-0.845185);
	v(0.202783,0.125000,-0.756796);
	v(0.194114,-0.000000,-0.724444);
	v(0.202783,-0.125000,-0.756796);
	v(0.226466,-0.216506,-0.845185);
	v(0.258819,-0.250000,-0.965925);
	v(0.291171,-0.216506,-1.086666);
	v(0.314855,-0.125000,-1.175054);
	v(0.163157,-0.000000,-1.239306);
	v(0.158786,0.125000,-1.206099);
	v(0.146842,0.216506,-1.115375);
	v(0.130526,0.250000,-0.991445);
	v(0.114210,0.216506,-0.867514);
	v(0.102266,0.125000,-0.776790);
	v(0.097894,-0.000000,-0.743583);
	v(0.102266,-0.125000,-0.776790);
	v(0.114210,-0.216506,-0.867514);
	v(0.130526,-0.250000,-0.991445);
	v(0.146842,-0.216506,-1.115375);
	v(0.158786,-0.125000,-1.206099);
	v(-0.000000,-0.000000,-1.250000);
	v(-0.000000,0.125000,-1.216506);
	v(-0.000000,0.216506,-1.125000);
	v(-0.000000,0.250000,-1.000000);
	v(-0.000000,0.216506,-0.875000);
	v(-0.000000,0.125000,-0.783493);
	v(-0.000000,-0.000000,-0.750000);
	v(-0.000000,-0.125000,-0.783493);
	v(-0.000000,-0.216506,-0.875000);
	v(-0.000000,-0.250000,-1.000000);
	v(-0.000000,-0.216506,-1.124999);
	v(-0.000000,-0.125000,-1.216506);
	v(-0.163158,-0.000000,-1.239306);
	v(-0.158786,0.125000,-1.206099);
	v(-0.146842,0.216506,-1.115375);
	v(-0.130527,0.250000,-0.991445);
	v(-0.114211,0.216506,-0.867514);
	v(-0.102267,0.125000,-0.776790);
	v(-0.097895,-0.000000,-0.743583);
	v(-0.102267,-0.125000,-0.776790);
	v(-0.114211,-0.216506,-0.867514);
	v(-0.130527,-0.250000,-0.991445);
	v(-0.146842,-0.216506,-1.115375);
	v(-0.158786,-0.125000,-1.206099);
	v(-0.323524,-0.000000,-1.207407);
	v(-0.314855,0.125000,-1.175055);
	v(-0.291172,0.216506,-1.086666);
	v(-0.258819,0.250000,-0.965926);
	v(-0.226467,0.216506,-0.845185);
	v(-0.202783,0.125000,-0.756796);
	v(-0.194115,-0.000000,-0.724444);
	v(-0.202783,-0.125000,-0.756796);
	v(-0.226467,-0.216506,-0.845185);
	v(-0.258819,-0.250000,-0.965925);
	v(-0.291172,-0.216506,-1.086666);
	v(-0.314855,-0.125000,-1.175054);
	v(-0.478355,-0.000000,-1.154849);
	v(-0.465537,0.125000,-1.123905);
	v(-0.430519,0.216506,-1.039364);
	v(-0.382684,0.250000,-0.923879);
	v(-0.334848,0.216506,-0.808394);
	v(-0.299830,0.125000,-0.723853);
	v(-0.287013,-0.000000,-0.692909);
	v(-0.299830,-0.125000,-0.723853);
	v(-0.334848,-0.216506,-0.808394);
	v(-0.382684,-0.250000,-0.923879);
	v(-0.430519,-0.216506,-1.039364);
	v(-0.465537,-0.125000,-1.123905);
	v(-0.625000,-0.000000,-1.082531);
	v(-0.608254,0.125000,-1.053525);
	v(-0.562500,0.216506,-0.974278);
	v(-0.500000,0.250000,-0.866025);
	v(-0.437500,0.216506,-0.757772);
	v(-0.391747,0.125000,-0.678525);
	v(-0.375000,-0.000000,-0.649519);
	v(-0.391747,-0.125000,-0.678525);
	v(-0.437500,-0.216506,-0.757772);
	v(-0.500000,-0.250000,-0.866025);
	v(-0.562500,-0.216506,-0.974278);
	v(-0.608254,-0.125000,-1.053525);
	v(-0.760952,-0.000000,-0.991691);
	v(-0.740563,0.125000,-0.965119);
	v(-0.684857,0.216506,-0.892522);
	v(-0.608762,0.250000,-0.793353);
	v(-0.532667,0.216506,-0.694184);
	v(-0.476961,0.125000,-0.621587);
	v(-0.456571,-0.000000,-0.595015);
	v(-0.476961,-0.125000,-0.621587);
	v(-0.532667,-0.216506,-0.694184);
	v(-0.608762,-0.250000,-0.793353);
	v(-0.684857,-0.216506,-0.892522);
	v(-0.740563,-0.125000,-0.965119);
	v(-0.883884,-0.000000,-0.883883);
	v(-0.860200,0.125000,-0.860200);
	v(-0.795495,0.216506,-0.795495);
	v(-0.707107,0.250000,-0.707107);
	v(-0.618719,0.216506,-0.618718);
	v(-0.554014,0.125000,-0.554013);
	v(-0.530330,-0.000000,-0.530330);
	v(-0.554014,-0.125000,-0.554013);
	v(-0.618719,-0.216506,-0.618718);
	v(-0.707107,-0.250000,-0.707106);
	v(-0.795495,-0.216506,-0.795495);
	v(-0.860200,-0.125000,-0.860200);
	v(-0.991692,-0.000000,-0.760951);
	v(-0.965120,0.125000,-0.740562);
	v(-0.892523,0.216506,-0.684856);
	v(-0.793354,0.250000,-0.608761);
	v(-0.694185,0.216506,-0.532666);
	v(-0.621588,0.125000,-0.476960);
	v(-0.595015,-0.000000,-0.456571);
	v(-0.621588,-0.125000,-0.476960);
	v(-0.694185,-0.216506,-0.532666);
	v(-0.793354,-0.250000,-0.608761);
	v(-0.892523,-0.216506,-0.684856);
	v(-0.965120,-0.125000,-0.740562);
	v(-1.082532,-0.000000,-0.625000);
	v(-1.053526,0.125000,-0.608253);
	v(-0.974279,0.216506,-0.562500);
	v(-0.866026,0.250000,-0.500000);
	v(-0.757773,0.216506,-0.437500);
	v(-0.678526,0.125000,-0.391747);
	v(-0.649519,-0.000000,-0.375000);
	v(-0.678526,-0.125000,-0.391747);
	v(-0.757773,-0.216506,-0.437500);
	v(-0.866026,-0.250000,-0.500000);
	v(-0.974279,-0.216506,-0.562500);
	v(-1.053526,-0.125000,-0.608253);
	v(-1.154850,-0.000000,-0.478354);
	v(-1.123906,0.125000,-0.465537);
	v(-1.039365,0.216506,-0.430519);
	v(-0.923880,0.250000,-0.382683);
	v(-0.808395,0.216506,-0.334848);
	v(-0.723854,0.125000,-0.299830);
	v(-0.692910,-0.000000,-0.287012);
	v(-0.723854,-0.125000,-0.299830);
	v(-0.808395,-0.216506,-0.334848);
	v(-0.923880,-0.250000,-0.382683);
	v(-1.039365,-0.216506,-0.430519);
	v(-1.123906,-0.125000,-0.465537);
	v(-1.207407,-0.000000,-0.323524);
	v(-1.175055,0.125000,-0.314855);
	v(-1.086667,0.216506,-0.291171);
	v(-0.965926,0.250000,-0.258819);
	v(-0.845185,0.216506,-0.226466);
	v(-0.756797,0.125000,-0.202783);
	v(-0.724445,-0.000000,-0.194114);
	v(-0.756797,-0.125000,-0.202783);
	v(-0.845185,-0.216506,-0.226466);
	v(-0.965926,-0.250000,-0.258819);
	v(-1.086667,-0.216506,-0.291171);
	v(-1.175055,-0.125000,-0.314855);
	v(-1.239306,-0.000000,-0.163157);
	v(-1.206099,0.125000,-0.158786);
	v(-1.115376,0.216506,-0.146842);
	v(-0.991445,0.250000,-0.130526);
	v(-0.867515,0.216506,-0.114210);
	v(-0.776791,0.125000,-0.102266);
	v(-0.743584,-0.000000,-0.097894);
	v(-0.776791,-0.125000,-0.102266);
	v(-0.867515,-0.216506,-0.114210);
	v(-0.991445,-0.250000,-0.130526);
	v(-1.115376,-0.216506,-0.146842);
	v(-1.206099,-0.125000,-0.158786);
	v(-1.250000,-0.000000,-0.000000);
	v(-1.216507,0.125000,-0.000000);
	v(-1.125000,0.216506,-0.000000);
	v(-1.000000,0.250000,-0.000000);
	v(-0.875000,0.216506,-0.000000);
	v(-0.783494,0.125000,-0.000000);
	v(-0.750000,-0.000000,-0.000000);
	v(-0.783494,-0.125000,-0.000000);
	v(-0.875000,-0.216506,-0.000000);
	v(-1.000000,-0.250000,-0.000000);
	v(-1.125000,-0.216506,-0.000000);
	v(-1.216507,-0.125000,-0.000000);
	v(-1.239306,-0.000000,0.163158);
	v(-1.206099,0.125000,0.158786);
	v(-1.115376,0.216506,0.146842);
	v(-0.991445,0.250000,0.130527);
	v(-0.867515,0.216506,0.114211);
	v(-0.776791,0.125000,0.102267);
	v(-0.743584,-0.000000,0.097895);
	v(-0.776791,-0.125000,0.102267);
	v(-0.867515,-0.216506,0.114211);
	v(-0.991445,-0.250000,0.130527);
	v(-1.115376,-0.216506,0.146842);
	v(-1.206099,-0.125000,0.158786);
	v(-1.207408,-0.000000,0.323524);
	v(-1.175055,0.125000,0.314855);
	v(-1.086667,0.216506,0.291172);
	v(-0.965926,0.250000,0.258819);
	v(-0.845185,0.216506,0.226467);
	v(-0.756797,0.125000,0.202783);
	v(-0.724445,-0.000000,0.194115);
	v(-0.756797,-0.125000,0.202783);
	v(-0.845185,-0.216506,0.226467);
	v(-0.965926,-0.250000,0.258819);
	v(-1.086667,-0.216506,0.291172);
	v(-1.175055,-0.125000,0.314855);
	v(-1.154850,-0.000000,0.478355);
	v(-1.123906,0.125000,0.465537);
	v(-1.039365,0.216506,0.430519);
	v(-0.923880,0.250000,0.382684);
	v(-0.808395,0.216506,0.334848);
	v(-0.723854,0.125000,0.299830);
	v(-0.692910,-0.000000,0.287013);
	v(-0.723854,-0.125000,0.299830);
	v(-0.808395,-0.216506,0.334848);
	v(-0.923880,-0.250000,0.382684);
	v(-1.039365,-0.216506,0.430519);
	v(-1.123906,-0.125000,0.465537);
	v(-1.082532,-0.000000,0.625000);
	v(-1.053526,0.125000,0.608253);
	v(-0.974279,0.216506,0.562500);
	v(-0.866026,0.250000,0.500000);
	v(-0.757773,0.216506,0.437500);
	v(-0.678526,0.125000,0.391747);
	v(-0.649519,-0.000000,0.375000);
	v(-0.678526,-0.125000,0.391747);
	v(-0.757773,-0.216506,0.437500);
	v(-0.866026,-0.250000,0.500000);
	v(-0.974279,-0.216506,0.562500);
	v(-1.053526,-0.125000,0.608253);
	v(-0.991692,-0.000000,0.760952);
	v(-0.965120,0.125000,0.740562);
	v(-0.892523,0.216506,0.684857);
	v(-0.793354,0.250000,0.608762);
	v(-0.694185,0.216506,0.532667);
	v(-0.621588,0.125000,0.476961);
	v(-0.595015,-0.000000,0.456571);
	v(-0.621588,-0.125000,0.476961);
	v(-0.694185,-0.216506,0.532667);
	v(-0.793354,-0.250000,0.608762);
	v(-0.892523,-0.216506,0.684857);
	v(-0.965120,-0.125000,0.740562);
	v(-0.883884,-0.000000,0.883884);
	v(-0.860200,0.125000,0.860200);
	v(-0.795496,0.216507,0.795495);
	v(-0.707107,0.250000,0.707107);
	v(-0.618719,0.216506,0.618719);
	v(-0.554014,0.125000,0.554014);
	v(-0.530330,-0.000000,0.530330);
	v(-0.554014,-0.125000,0.554014);
	v(-0.618719,-0.216506,0.618719);
	v(-0.707107,-0.250000,0.707107);
	v(-0.795496,-0.216506,0.795495);
	v(-0.860200,-0.125000,0.860200);
	v(-0.760952,-0.000000,0.991692);
	v(-0.740563,0.125000,0.965120);
	v(-0.684857,0.216506,0.892523);
	v(-0.608762,0.250000,0.793354);
	v(-0.532667,0.216506,0.694184);
	v(-0.476961,0.125000,0.621588);
	v(-0.456571,-0.000000,0.595015);
	v(-0.476961,-0.125000,0.621588);
	v(-0.532667,-0.216506,0.694184);
	v(-0.608762,-0.250000,0.793354);
	v(-0.684857,-0.216506,0.892523);
	v(-0.740563,-0.125000,0.965120);
	v(-0.625000,-0.000000,1.082532);
	v(-0.608253,0.125000,1.053526);
	v(-0.562500,0.216507,0.974279);
	v(-0.500000,0.250000,0.866026);
	v(-0.437500,0.216507,0.757773);
	v(-0.391747,0.125000,0.678526);
	v(-0.375000,-0.000000,0.649519);
	v(-0.391747,-0.125000,0.678526);
	v(-0.437500,-0.216506,0.757773);
	v(-0.500000,-0.250000,0.866026);
	v(-0.562500,-0.216506,0.974279);
	v(-0.608253,-0.125000,1.053526);
	v(-0.478355,-0.000000,1.154850);
	v(-0.465537,0.125000,1.123906);
	v(-0.430519,0.216507,1.039365);
	v(-0.382684,0.250000,0.923880);
	v(-0.334848,0.216506,0.808395);
	v(-0.299830,0.125000,0.723854);
	v(-0.287013,-0.000000,0.692910);
	v(-0.299830,-0.125000,0.723854);
	v(-0.334848,-0.216506,0.808395);
	v(-0.382684,-0.250000,0.923880);
	v(-0.430519,-0.216506,1.039365);
	v(-0.465537,-0.125000,1.123906);
	v(-0.323524,-0.000000,1.207408);
	v(-0.314855,0.125000,1.175055);
	v(-0.291172,0.216506,1.086667);
	v(-0.258819,0.250000,0.965926);
	v(-0.226467,0.216506,0.845185);
	v(-0.202783,0.125000,0.756797);
	v(-0.194115,-0.000000,0.724445);
	v(-0.202783,-0.125000,0.756797);
	v(-0.226467,-0.216506,0.845185);
	v(-0.258819,-0.250000,0.965926);
	v(-0.291172,-0.216506,1.086667);
	v(-0.314855,-0.125000,1.175055);
	v(-0.163158,-0.000000,1.239306);
	v(-0.158787,0.125000,1.206099);
	v(-0.146843,0.216507,1.115376);
	v(-0.130527,0.250000,0.991445);
	v(-0.114211,0.216507,0.867515);
	v(-0.102267,0.125000,0.776791);
	v(-0.097895,-0.000000,0.743584);
	v(-0.102267,-0.125000,0.776791);
	v(-0.114211,-0.216506,0.867515);
	v(-0.130527,-0.250000,0.991445);
	v(-0.146843,-0.216506,1.115376);
	v(-0.158787,-0.125000,1.206099);
	v(-0.000000,-0.000000,1.250000);
	v(-0.000000,0.125000,1.216507);
	v(-0.000000,0.216506,1.125000);
	v(-0.000000,0.250000,1.000000);
	v(-0.000000,0.216506,0.875000);
	v(-0.000000,0.125000,0.783494);
	v(-0.000000,-0.000000,0.750000);
	v(-0.000000,-0.125000,0.783494);
	v(-0.000000,-0.216506,0.875000);
	v(-0.000000,-0.250000,1.000000);
	v(-0.000000,-0.216506,1.125000);
	v(-0.000000,-0.125000,1.216507);
	v(0.163158,-0.000000,1.239306);
	v(0.158786,0.125000,1.206099);
	v(0.146842,0.216507,1.115376);
	v(0.130526,0.250000,0.991445);
	v(0.114210,0.216507,0.867515);
	v(0.102266,0.125000,0.776791);
	v(0.097894,-0.000000,0.743584);
	v(0.102266,-0.125000,0.776791);
	v(0.114210,-0.216506,0.867515);
	v(0.130526,-0.250000,0.991445);
	v(0.146842,-0.216506,1.115376);
	v(0.158786,-0.125000,1.206099);
	v(0.323523,-0.000000,1.207408);
	v(0.314855,0.125000,1.175055);
	v(0.291171,0.216506,1.086667);
	v(0.258819,0.250000,0.965926);
	v(0.226466,0.216506,0.845185);
	v(0.202783,0.125000,0.756797);
	v(0.194114,-0.000000,0.724445);
	v(0.202783,-0.125000,0.756797);
	v(0.226466,-0.216506,0.845185);
	v(0.258819,-0.250000,0.965926);
	v(0.291171,-0.216506,1.086667);
	v(0.314855,-0.125000,1.175055);
	v(0.478354,-0.000000,1.154850);
	v(0.465537,0.125000,1.123906);
	v(0.430519,0.216507,1.039365);
	v(0.382683,0.250000,0.923880);
	v(0.334848,0.216506,0.808395);
	v(0.299830,0.125000,0.723854);
	v(0.287012,-0.000000,0.692910);
	v(0.299830,-0.125000,0.723854);
	v(0.334848,-0.216506,0.808395);
	v(0.382683,-0.250000,0.923880);
	v(0.430519,-0.216506,1.039365);
	v(0.465537,-0.125000,1.123906);
	v(0.625000,-0.000000,1.082532);
	v(0.608253,0.125000,1.053526);
	v(0.562500,0.216507,0.974279);
	v(0.500000,0.250000,0.866026);
	v(0.437500,0.216507,0.757773);
	v(0.391746,0.125000,0.678526);
	v(0.375000,-0.000000,0.649519);
	v(0.391746,-0.125000,0.678526);
	v(0.437500,-0.216506,0.757773);
	v(0.500000,-0.250000,0.866026);
	v(0.562500,-0.216506,0.974279);
	v(0.608253,-0.125000,1.053526);
	v(0.760952,-0.000000,0.991692);
	v(0.740562,0.125000,0.965120);
	v(0.684856,0.216506,0.892523);
	v(0.608761,0.250000,0.793354);
	v(0.532666,0.216506,0.694184);
	v(0.476960,0.125000,0.621588);
	v(0.456571,-0.000000,0.595015);
	v(0.476960,-0.125000,0.621588);
	v(0.532666,-0.216506,0.694184);
	v(0.608761,-0.250000,0.793354);
	v(0.684856,-0.216506,0.892523);
	v(0.740562,-0.125000,0.965120);
	v(0.883883,-0.000000,0.883884);
	v(0.860199,0.125000,0.860200);
	v(0.795495,0.216506,0.795496);
	v(0.707106,0.250000,0.707107);
	v(0.618718,0.216506,0.618719);
	v(0.554013,0.125000,0.554014);
	v(0.530330,-0.000000,0.530330);
	v(0.554013,-0.125000,0.554014);
	v(0.618718,-0.216506,0.618719);
	v(0.707106,-0.250000,0.707107);
	v(0.795495,-0.216506,0.795496);
	v(0.860199,-0.125000,0.860200);
	v(0.991691,-0.000000,0.760952);
	v(0.965119,0.125000,0.740562);
	v(0.892522,0.216507,0.684857);
	v(0.793353,0.250000,0.608762);
	v(0.694184,0.216506,0.532667);
	v(0.621587,0.125000,0.476961);
	v(0.595015,-0.000000,0.456571);
	v(0.621587,-0.125000,0.476961);
	v(0.694184,-0.216506,0.532667);
	v(0.793353,-0.250000,0.608762);
	v(0.892522,-0.216506,0.684857);
	v(0.965119,-0.125000,0.740562);
	v(1.082531,-0.000000,0.625000);
	v(1.053525,0.125000,0.608254);
	v(0.974278,0.216506,0.562500);
	v(0.866025,0.250000,0.500000);
	v(0.757772,0.216506,0.437500);
	v(0.678525,0.125000,0.391747);
	v(0.649519,-0.000000,0.375000);
	v(0.678525,-0.125000,0.391747);
	v(0.757772,-0.216506,0.437500);
	v(0.866025,-0.250000,0.500000);
	v(0.974278,-0.216506,0.562500);
	v(1.053525,-0.125000,0.608254);
	v(1.154849,-0.000000,0.478355);
	v(1.123905,0.125000,0.465537);
	v(1.039364,0.216506,0.430519);
	v(0.923879,0.250000,0.382684);
	v(0.808394,0.216506,0.334848);
	v(0.723853,0.125000,0.299830);
	v(0.692909,-0.000000,0.287013);
	v(0.723853,-0.125000,0.299830);
	v(0.808394,-0.216506,0.334848);
	v(0.923879,-0.250000,0.382684);
	v(1.039364,-0.216506,0.430519);
	v(1.123905,-0.125000,0.465537);
	v(1.207407,-0.000000,0.323524);
	v(1.175055,0.125000,0.314855);
	v(1.086666,0.216506,0.291171);
	v(0.965926,0.250000,0.258819);
	v(0.845185,0.216506,0.226467);
	v(0.756796,0.125000,0.202783);
	v(0.724444,-0.000000,0.194114);
	v(0.756796,-0.125000,0.202783);
	v(0.845185,-0.216506,0.226467);
	v(0.965926,-0.250000,0.258819);
	v(1.086666,-0.216506,0.291171);
	v(1.175055,-0.125000,0.314855);
	v(1.239306,-0.000000,0.163158);
	v(1.206099,0.125000,0.158786);
	v(1.115375,0.216506,0.146842);
	v(0.991445,0.250000,0.130527);
	v(0.867514,0.216506,0.114211);
	v(0.776790,0.125000,0.102267);
	v(0.743583,-0.000000,0.097895);
	v(0.776790,-0.125000,0.102267);
	v(0.867514,-0.216506,0.114211);
	v(0.991445,-0.250000,0.130527);
	v(1.115375,-0.216506,0.146842);
	v(1.206099,-0.125000,0.158786);



	f4n(0,12,13,1, 0, 0,1,2,3);
	f4n(1,13,14,2, 0, 3,2,4,5);
	f4n(2,14,15,3, 0, 5,4,6,6);
	f4n(3,15,16,4, 0, 6,6,7,8);
	f4n(4,16,17,5, 0, 8,7,9,10);
	f4n(5,17,18,6, 0, 10,9,11,12);
	f4n(6,18,19,7, 0, 12,11,13,14);
	f4n(7,19,20,8, 0, 14,13,15,16);
	f4n(8,20,21,9, 0, 16,15,17,17);
	f4n(9,21,22,10, 0, 17,17,18,19);
	f4n(10,22,23,11, 0, 19,18,20,21);
	f4n(0,11,23,12, 0, 0,21,20,1);
	f4n(12,24,25,13, 0, 1,22,23,2);
	f4n(13,25,26,14, 0, 2,23,24,4);
	f4n(14,26,27,15, 0, 4,24,6,6);
	f4n(15,27,28,16, 0, 6,6,25,7);
	f4n(16,28,29,17, 0, 7,25,26,9);
	f4n(17,29,30,18, 0, 9,26,27,11);
	f4n(18,30,31,19, 0, 11,27,28,13);
	f4n(19,31,32,20, 0, 13,28,29,15);
	f4n(20,32,33,21, 0, 15,29,17,17);
	f4n(21,33,34,22, 0, 17,17,30,18);
	f4n(22,34,35,23, 0, 18,30,31,20);
	f4n(23,35,24,12, 0, 20,31,22,1);
	f4n(24,36,37,25, 0, 22,32,33,23);
	f4n(25,37,38,26, 0, 23,33,34,24);
	f4n(26,38,39,27, 0, 24,34,6,6);
	f4n(27,39,40,28, 0, 6,6,35,25);
	f4n(28,40,41,29, 0, 25,35,36,26);
	f4n(29,41,42,30, 0, 26,36,37,27);
	f4n(30,42,43,31, 0, 27,37,38,28);
	f4n(31,43,44,32, 0, 28,38,39,29);
	f4n(32,44,45,33, 0, 29,39,17,17);
	f4n(33,45,46,34, 0, 17,17,40,30);
	f4n(34,46,47,35, 0, 30,40,41,31);
	f4n(35,47,36,24, 0, 31,41,32,22);
	f4n(36,48,49,37, 0, 32,42,43,33);
	f4n(37,49,50,38, 0, 33,43,44,34);
	f4n(38,50,51,39, 0, 34,44,6,6);
	f4n(39,51,52,40, 0, 6,6,45,35);
	f4n(40,52,53,41, 0, 35,45,46,36);
	f4n(41,53,54,42, 0, 36,46,47,37);
	f4n(42,54,55,43, 0, 37,47,48,38);
	f4n(43,55,56,44, 0, 38,48,49,39);
	f4n(44,56,57,45, 0, 39,49,17,17);
	f4n(45,57,58,46, 0, 17,17,50,40);
	f4n(46,58,59,47, 0, 40,50,51,41);
	f4n(47,59,48,36, 0, 41,51,42,32);
	f4n(48,60,61,49, 0, 42,52,53,43);
	f4n(49,61,62,50, 0, 43,53,54,44);
	f4n(50,62,63,51, 0, 44,54,6,6);
	f4n(51,63,64,52, 0, 6,6,55,45);
	f4n(52,64,65,53, 0, 45,55,56,46);
	f4n(53,65,66,54, 0, 46,56,57,47);
	f4n(54,66,67,55, 0, 47,57,58,48);
	f4n(55,67,68,56, 0, 48,58,59,49);
	f4n(56,68,69,57, 0, 49,59,17,17);
	f4n(57,69,70,58, 0, 17,17,60,50);
	f4n(58,70,71,59, 0, 50,60,61,51);
	f4n(59,71,60,48, 0, 51,61,52,42);
	f4n(60,72,73,61, 0, 52,62,63,53);
	f4n(61,73,74,62, 0, 53,63,64,54);
	f4n(62,74,75,63, 0, 54,64,6,6);
	f4n(63,75,76,64, 0, 6,6,65,55);
	f4n(64,76,77,65, 0, 55,65,66,56);
	f4n(65,77,78,66, 0, 56,66,67,57);
	f4n(66,78,79,67, 0, 57,67,68,58);
	f4n(67,79,80,68, 0, 58,68,69,59);
	f4n(68,80,81,69, 0, 59,69,17,17);
	f4n(69,81,82,70, 0, 17,17,70,60);
	f4n(70,82,83,71, 0, 60,70,71,61);
	f4n(71,83,72,60, 0, 61,71,62,52);
	f4n(72,84,85,73, 0, 62,72,73,63);
	f4n(73,85,86,74, 0, 63,73,74,64);
	f4n(74,86,87,75, 0, 64,74,6,6);
	f4n(75,87,88,76, 0, 6,6,75,65);
	f4n(76,88,89,77, 0, 65,75,76,66);
	f4n(77,89,90,78, 0, 66,76,77,67);
	f4n(78,90,91,79, 0, 67,77,78,68);
	f4n(79,91,92,80, 0, 68,78,79,69);
	f4n(80,92,93,81, 0, 69,79,17,17);
	f4n(81,93,94,82, 0, 17,17,80,70);
	f4n(82,94,95,83, 0, 70,80,81,71);
	f4n(83,95,84,72, 0, 71,81,72,62);
	f4n(84,96,97,85, 0, 72,82,83,73);
	f4n(85,97,98,86, 0, 73,83,84,74);
	f4n(86,98,99,87, 0, 74,84,6,6);
	f4n(87,99,100,88, 0, 6,6,85,75);
	f4n(88,100,101,89, 0, 75,85,86,76);
	f4n(89,101,102,90, 0, 76,86,87,77);
	f4n(90,102,103,91, 0, 77,87,88,78);
	f4n(91,103,104,92, 0, 78,88,89,79);
	f4n(92,104,105,93, 0, 79,89,17,17);
	f4n(93,105,106,94, 0, 17,17,90,80);
	f4n(94,106,107,95, 0, 80,90,91,81);
	f4n(95,107,96,84, 0, 81,91,82,72);
	f4n(96,108,109,97, 0, 82,92,93,83);
	f4n(97,109,110,98, 0, 83,93,94,84);
	f4n(98,110,111,99, 0, 84,94,6,6);
	f4n(99,111,112,100, 0, 6,6,95,85);
	f4n(100,112,113,101, 0, 85,95,96,86);
	f4n(101,113,114,102, 0, 86,96,97,87);
	f4n(102,114,115,103, 0, 87,97,98,88);
	f4n(103,115,116,104, 0, 88,98,99,89);
	f4n(104,116,117,105, 0, 89,99,17,17);
	f4n(105,117,118,106, 0, 17,17,100,90);
	f4n(106,118,119,107, 0, 90,100,101,91);
	f4n(107,119,108,96, 0, 91,101,92,82);
	f4n(108,120,121,109, 0, 92,102,103,93);
	f4n(109,121,122,110, 0, 93,103,104,94);
	f4n(110,122,123,111, 0, 94,104,6,6);
	f4n(111,123,124,112, 0, 6,6,105,95);
	f4n(112,124,125,113, 0, 95,105,106,96);
	f4n(113,125,126,114, 0, 96,106,107,97);
	f4n(114,126,127,115, 0, 97,107,108,98);
	f4n(115,127,128,116, 0, 98,108,109,99);
	f4n(116,128,129,117, 0, 99,109,17,17);
	f4n(117,129,130,118, 0, 17,17,110,100);
	f4n(118,130,131,119, 0, 100,110,111,101);
	f4n(119,131,120,108, 0, 101,111,102,92);
	f4n(120,132,133,121, 0, 102,112,113,103);
	f4n(121,133,134,122, 0, 103,113,114,104);
	f4n(122,134,135,123, 0, 104,114,6,6);
	f4n(123,135,136,124, 0, 6,6,115,105);
	f4n(124,136,137,125, 0, 105,115,116,106);
	f4n(125,137,138,126, 0, 106,116,117,107);
	f4n(126,138,139,127, 0, 107,117,118,108);
	f4n(127,139,140,128, 0, 108,118,119,109);
	f4n(128,140,141,129, 0, 109,119,17,17);
	f4n(129,141,142,130, 0, 17,17,120,110);
	f4n(130,142,143,131, 0, 110,120,121,111);
	f4n(131,143,132,120, 0, 111,121,112,102);
	f4n(132,144,145,133, 0, 112,122,123,113);
	f4n(133,145,146,134, 0, 113,123,124,114);
	f4n(134,146,147,135, 0, 114,124,6,6);
	f4n(135,147,148,136, 0, 6,6,125,115);
	f4n(136,148,149,137, 0, 115,125,126,116);
	f4n(137,149,150,138, 0, 116,126,127,117);
	f4n(138,150,151,139, 0, 117,127,128,118);
	f4n(139,151,152,140, 0, 118,128,129,119);
	f4n(140,152,153,141, 0, 119,129,17,17);
	f4n(141,153,154,142, 0, 17,17,130,120);
	f4n(142,154,155,143, 0, 120,130,131,121);
	f4n(143,155,144,132, 0, 121,131,122,112);
	f4n(144,156,157,145, 0, 122,132,133,123);
	f4n(145,157,158,146, 0, 123,133,134,124);
	f4n(146,158,159,147, 0, 124,134,6,6);
	f4n(147,159,160,148, 0, 6,6,135,125);
	f4n(148,160,161,149, 0, 125,135,136,126);
	f4n(149,161,162,150, 0, 126,136,137,127);
	f4n(150,162,163,151, 0, 127,137,138,128);
	f4n(151,163,164,152, 0, 128,138,139,129);
	f4n(152,164,165,153, 0, 129,139,17,17);
	f4n(153,165,166,154, 0, 17,17,140,130);
	f4n(154,166,167,155, 0, 130,140,141,131);
	f4n(155,167,156,144, 0, 131,141,132,122);
	f4n(156,168,169,157, 0, 132,142,143,133);
	f4n(157,169,170,158, 0, 133,143,144,134);
	f4n(158,170,171,159, 0, 134,144,6,6);
	f4n(159,171,172,160, 0, 6,6,145,135);
	f4n(160,172,173,161, 0, 135,145,146,136);
	f4n(161,173,174,162, 0, 136,146,147,137);
	f4n(162,174,175,163, 0, 137,147,148,138);
	f4n(163,175,176,164, 0, 138,148,149,139);
	f4n(164,176,177,165, 0, 139,149,17,17);
	f4n(165,177,178,166, 0, 17,17,150,140);
	f4n(166,178,179,167, 0, 140,150,151,141);
	f4n(167,179,168,156, 0, 141,151,142,132);
	f4n(168,180,181,169, 0, 142,152,153,143);
	f4n(169,181,182,170, 0, 143,153,154,144);
	f4n(170,182,183,171, 0, 144,154,6,6);
	f4n(171,183,184,172, 0, 6,6,155,145);
	f4n(172,184,185,173, 0, 145,155,156,146);
	f4n(173,185,186,174, 0, 146,156,157,147);
	f4n(174,186,187,175, 0, 147,157,158,148);
	f4n(175,187,188,176, 0, 148,158,159,149);
	f4n(176,188,189,177, 0, 149,159,17,17);
	f4n(177,189,190,178, 0, 17,17,160,150);
	f4n(178,190,191,179, 0, 150,160,161,151);
	f4n(179,191,180,168, 0, 151,161,152,142);
	f4n(180,192,193,181, 0, 152,162,163,153);
	f4n(181,193,194,182, 0, 153,163,164,154);
	f4n(182,194,195,183, 0, 154,164,6,6);
	f4n(183,195,196,184, 0, 6,6,165,155);
	f4n(184,196,197,185, 0, 155,165,166,156);
	f4n(185,197,198,186, 0, 156,166,167,157);
	f4n(186,198,199,187, 0, 157,167,168,158);
	f4n(187,199,200,188, 0, 158,168,169,159);
	f4n(188,200,201,189, 0, 159,169,17,17);
	f4n(189,201,202,190, 0, 17,17,170,160);
	f4n(190,202,203,191, 0, 160,170,171,161);
	f4n(191,203,192,180, 0, 161,171,162,152);
	f4n(192,204,205,193, 0, 162,172,173,163);
	f4n(193,205,206,194, 0, 163,173,174,164);
	f4n(194,206,207,195, 0, 164,174,6,6);
	f4n(195,207,208,196, 0, 6,6,175,165);
	f4n(196,208,209,197, 0, 165,175,176,166);
	f4n(197,209,210,198, 0, 166,176,177,167);
	f4n(198,210,211,199, 0, 167,177,178,168);
	f4n(199,211,212,200, 0, 168,178,179,169);
	f4n(200,212,213,201, 0, 169,179,17,17);
	f4n(201,213,214,202, 0, 17,17,180,170);
	f4n(202,214,215,203, 0, 170,180,181,171);
	f4n(203,215,204,192, 0, 171,181,172,162);
	f4n(204,216,217,205, 0, 172,182,183,173);
	f4n(205,217,218,206, 0, 173,183,184,174);
	f4n(206,218,219,207, 0, 174,184,6,6);
	f4n(207,219,220,208, 0, 6,6,185,175);
	f4n(208,220,221,209, 0, 175,185,186,176);
	f4n(209,221,222,210, 0, 176,186,187,177);
	f4n(210,222,223,211, 0, 177,187,188,178);
	f4n(211,223,224,212, 0, 178,188,189,179);
	f4n(212,224,225,213, 0, 179,189,17,17);
	f4n(213,225,226,214, 0, 17,17,190,180);
	f4n(214,226,227,215, 0, 180,190,191,181);
	f4n(215,227,216,204, 0, 181,191,182,172);
	f4n(216,228,229,217, 0, 182,192,193,183);
	f4n(217,229,230,218, 0, 183,193,194,184);
	f4n(218,230,231,219, 0, 184,194,6,6);
	f4n(219,231,232,220, 0, 6,6,195,185);
	f4n(220,232,233,221, 0, 185,195,196,186);
	f4n(221,233,234,222, 0, 186,196,197,187);
	f4n(222,234,235,223, 0, 187,197,198,188);
	f4n(223,235,236,224, 0, 188,198,199,189);
	f4n(224,236,237,225, 0, 189,199,17,17);
	f4n(225,237,238,226, 0, 17,17,200,190);
	f4n(226,238,239,227, 0, 190,200,201,191);
	f4n(227,239,228,216, 0, 191,201,192,182);
	f4n(228,240,241,229, 0, 192,202,203,193);
	f4n(229,241,242,230, 0, 193,203,204,194);
	f4n(230,242,243,231, 0, 194,204,6,6);
	f4n(231,243,244,232, 0, 6,6,205,195);
	f4n(232,244,245,233, 0, 195,205,206,196);
	f4n(233,245,246,234, 0, 196,206,207,197);
	f4n(234,246,247,235, 0, 197,207,208,198);
	f4n(235,247,248,236, 0, 198,208,209,199);
	f4n(236,248,249,237, 0, 199,209,17,17);
	f4n(237,249,250,238, 0, 17,17,210,200);
	f4n(238,250,251,239, 0, 200,210,211,201);
	f4n(239,251,240,228, 0, 201,211,202,192);
	f4n(240,252,253,241, 0, 202,212,213,203);
	f4n(241,253,254,242, 0, 203,213,214,204);
	f4n(242,254,255,243, 0, 204,214,6,6);
	f4n(243,255,256,244, 0, 6,6,215,205);
	f4n(244,256,257,245, 0, 205,215,216,206);
	f4n(245,257,258,246, 0, 206,216,217,207);
	f4n(246,258,259,247, 0, 207,217,218,208);
	f4n(247,259,260,248, 0, 208,218,219,209);
	f4n(248,260,261,249, 0, 209,219,17,17);
	f4n(249,261,262,250, 0, 17,17,220,210);
	f4n(250,262,263,251, 0, 210,220,221,211);
	f4n(251,263,252,240, 0, 211,221,212,202);
	f4n(252,264,265,253, 0, 212,222,223,213);
	f4n(253,265,266,254, 0, 213,223,224,214);
	f4n(254,266,267,255, 0, 214,224,6,6);
	f4n(255,267,268,256, 0, 6,6,225,215);
	f4n(256,268,269,257, 0, 215,225,226,216);
	f4n(257,269,270,258, 0, 216,226,227,217);
	f4n(258,270,271,259, 0, 217,227,228,218);
	f4n(259,271,272,260, 0, 218,228,229,219);
	f4n(260,272,273,261, 0, 219,229,17,17);
	f4n(261,273,274,262, 0, 17,17,230,220);
	f4n(262,274,275,263, 0, 220,230,231,221);
	f4n(263,275,264,252, 0, 221,231,222,212);
	f4n(264,276,277,265, 0, 222,232,233,223);
	f4n(265,277,278,266, 0, 223,233,234,224);
	f4n(266,278,279,267, 0, 224,234,6,6);
	f4n(267,279,280,268, 0, 6,6,235,225);
	f4n(268,280,281,269, 0, 225,235,236,226);
	f4n(269,281,282,270, 0, 226,236,237,227);
	f4n(270,282,283,271, 0, 227,237,238,228);
	f4n(271,283,284,272, 0, 228,238,239,229);
	f4n(272,284,285,273, 0, 229,239,17,17);
	f4n(273,285,286,274, 0, 17,17,240,230);
	f4n(274,286,287,275, 0, 230,240,241,231);
	f4n(275,287,276,264, 0, 231,241,232,222);
	f4n(276,288,289,277, 0, 232,242,10,233);
	f4n(277,289,290,278, 0, 233,10,8,234);
	f4n(278,290,291,279, 0, 234,8,6,6);
	f4n(279,291,292,280, 0, 6,6,5,235);
	f4n(280,292,293,281, 0, 235,5,3,236);
	f4n(281,293,294,282, 0, 236,3,0,237);
	f4n(282,294,295,283, 0, 237,0,21,238);
	f4n(283,295,296,284, 0, 238,21,19,239);
	f4n(284,296,297,285, 0, 239,19,17,17);
	f4n(285,297,298,286, 0, 17,17,16,240);
	f4n(286,298,299,287, 0, 240,16,14,241);
	f4n(287,299,288,276, 0, 241,14,242,232);
	f4n(288,300,301,289, 0, 242,11,9,10);
	f4n(289,301,302,290, 0, 10,9,7,8);
	f4n(290,302,303,291, 0, 8,7,6,6);
	f4n(291,303,304,292, 0, 6,6,4,5);
	f4n(292,304,305,293, 0, 5,4,2,3);
	f4n(293,305,306,294, 0, 3,2,1,0);
	f4n(294,306,307,295, 0, 0,1,20,21);
	f4n(295,307,308,296, 0, 21,20,18,19);
	f4n(296,308,309,297, 0, 19,18,17,17);
	f4n(297,309,310,298, 0, 17,17,15,16);
	f4n(298,310,311,299, 0, 16,15,13,14);
	f4n(299,311,300,288, 0, 14,13,11,242);
	f4n(300,312,313,301, 0, 11,27,243,9);
	f4n(301,313,314,302, 0, 9,243,25,7);
	f4n(302,314,315,303, 0, 7,25,6,6);
	f4n(303,315,316,304, 0, 6,6,24,4);
	f4n(304,316,317,305, 0, 4,24,23,2);
	f4n(305,317,318,306, 0, 2,23,22,1);
	f4n(306,318,319,307, 0, 1,22,31,20);
	f4n(307,319,320,308, 0, 20,31,30,18);
	f4n(308,320,321,309, 0, 18,30,17,17);
	f4n(309,321,322,310, 0, 17,17,29,15);
	f4n(310,322,323,311, 0, 15,29,28,13);
	f4n(311,323,312,300, 0, 13,28,27,11);
	f4n(312,324,325,313, 0, 27,37,36,243);
	f4n(313,325,326,314, 0, 243,36,35,25);
	f4n(314,326,327,315, 0, 25,35,6,6);
	f4n(315,327,328,316, 0, 6,6,34,24);
	f4n(316,328,329,317, 0, 24,34,33,23);
	f4n(317,329,330,318, 0, 23,33,32,22);
	f4n(318,330,331,319, 0, 22,32,41,31);
	f4n(319,331,332,320, 0, 31,41,40,30);
	f4n(320,332,333,321, 0, 30,40,17,17);
	f4n(321,333,334,322, 0, 17,17,39,29);
	f4n(322,334,335,323, 0, 29,39,38,28);
	f4n(323,335,324,312, 0, 28,38,37,27);
	f4n(324,336,337,325, 0, 37,47,46,36);
	f4n(325,337,338,326, 0, 36,46,45,35);
	f4n(326,338,339,327, 0, 35,45,6,6);
	f4n(327,339,340,328, 0, 6,6,44,34);
	f4n(328,340,341,329, 0, 34,44,43,33);
	f4n(329,341,342,330, 0, 33,43,42,32);
	f4n(330,342,343,331, 0, 32,42,51,41);
	f4n(331,343,344,332, 0, 41,51,50,40);
	f4n(332,344,345,333, 0, 40,50,17,17);
	f4n(333,345,346,334, 0, 17,17,49,39);
	f4n(334,346,347,335, 0, 39,49,48,38);
	f4n(335,347,336,324, 0, 38,48,47,37);
	f4n(336,348,349,337, 0, 47,57,56,46);
	f4n(337,349,350,338, 0, 46,56,55,45);
	f4n(338,350,351,339, 0, 45,55,6,6);
	f4n(339,351,352,340, 0, 6,6,54,44);
	f4n(340,352,353,341, 0, 44,54,53,43);
	f4n(341,353,354,342, 0, 43,53,52,42);
	f4n(342,354,355,343, 0, 42,52,61,51);
	f4n(343,355,356,344, 0, 51,61,60,50);
	f4n(344,356,357,345, 0, 50,60,17,17);
	f4n(345,357,358,346, 0, 17,17,59,49);
	f4n(346,358,359,347, 0, 49,59,58,48);
	f4n(347,359,348,336, 0, 48,58,57,47);
	f4n(348,360,361,349, 0, 57,67,66,56);
	f4n(349,361,362,350, 0, 56,66,65,55);
	f4n(350,362,363,351, 0, 55,65,6,6);
	f4n(351,363,364,352, 0, 6,6,64,54);
	f4n(352,364,365,353, 0, 54,64,63,53);
	f4n(353,365,366,354, 0, 53,63,62,52);
	f4n(354,366,367,355, 0, 52,62,71,61);
	f4n(355,367,368,356, 0, 61,71,70,60);
	f4n(356,368,369,357, 0, 60,70,17,17);
	f4n(357,369,370,358, 0, 17,17,69,59);
	f4n(358,370,371,359, 0, 59,69,68,58);
	f4n(359,371,360,348, 0, 58,68,67,57);
	f4n(360,372,373,361, 0, 67,77,76,66);
	f4n(361,373,374,362, 0, 66,76,75,65);
	f4n(362,374,375,363, 0, 65,75,6,6);
	f4n(363,375,376,364, 0, 6,6,74,64);
	f4n(364,376,377,365, 0, 64,74,73,63);
	f4n(365,377,378,366, 0, 63,73,72,62);
	f4n(366,378,379,367, 0, 62,72,81,71);
	f4n(367,379,380,368, 0, 71,81,80,70);
	f4n(368,380,381,369, 0, 70,80,17,17);
	f4n(369,381,382,370, 0, 17,17,79,69);
	f4n(370,382,383,371, 0, 69,79,78,68);
	f4n(371,383,372,360, 0, 68,78,77,67);
	f4n(372,384,385,373, 0, 77,87,86,76);
	f4n(373,385,386,374, 0, 76,86,85,75);
	f4n(374,386,387,375, 0, 75,85,6,6);
	f4n(375,387,388,376, 0, 6,6,84,74);
	f4n(376,388,389,377, 0, 74,84,83,73);
	f4n(377,389,390,378, 0, 73,83,82,72);
	f4n(378,390,391,379, 0, 72,82,91,81);
	f4n(379,391,392,380, 0, 81,91,90,80);
	f4n(380,392,393,381, 0, 80,90,17,17);
	f4n(381,393,394,382, 0, 17,17,89,79);
	f4n(382,394,395,383, 0, 79,89,88,78);
	f4n(383,395,384,372, 0, 78,88,87,77);
	f4n(384,396,397,385, 0, 87,97,96,86);
	f4n(385,397,398,386, 0, 86,96,95,85);
	f4n(386,398,399,387, 0, 85,95,6,6);
	f4n(387,399,400,388, 0, 6,6,94,84);
	f4n(388,400,401,389, 0, 84,94,93,83);
	f4n(389,401,402,390, 0, 83,93,92,82);
	f4n(390,402,403,391, 0, 82,92,101,91);
	f4n(391,403,404,392, 0, 91,101,100,90);
	f4n(392,404,405,393, 0, 90,100,17,17);
	f4n(393,405,406,394, 0, 17,17,99,89);
	f4n(394,406,407,395, 0, 89,99,98,88);
	f4n(395,407,396,384, 0, 88,98,97,87);
	f4n(396,408,409,397, 0, 97,107,106,96);
	f4n(397,409,410,398, 0, 96,106,105,95);
	f4n(398,410,411,399, 0, 95,105,6,6);
	f4n(399,411,412,400, 0, 6,6,104,94);
	f4n(400,412,413,401, 0, 94,104,103,93);
	f4n(401,413,414,402, 0, 93,103,102,92);
	f4n(402,414,415,403, 0, 92,102,111,101);
	f4n(403,415,416,404, 0, 101,111,110,100);
	f4n(404,416,417,405, 0, 100,110,17,17);
	f4n(405,417,418,406, 0, 17,17,109,99);
	f4n(406,418,419,407, 0, 99,109,244,98);
	f4n(407,419,408,396, 0, 98,244,107,97);
	f4n(408,420,421,409, 0, 107,117,116,106);
	f4n(409,421,422,410, 0, 106,116,115,105);
	f4n(410,422,423,411, 0, 105,115,6,6);
	f4n(411,423,424,412, 0, 6,6,114,104);
	f4n(412,424,425,413, 0, 104,114,113,103);
	f4n(413,425,426,414, 0, 103,113,112,102);
	f4n(414,426,427,415, 0, 102,112,121,111);
	f4n(415,427,428,416, 0, 111,121,120,110);
	f4n(416,428,429,417, 0, 110,120,17,17);
	f4n(417,429,430,418, 0, 17,17,119,109);
	f4n(418,430,431,419, 0, 109,119,118,244);
	f4n(419,431,420,408, 0, 244,118,117,107);
	f4n(420,432,433,421, 0, 117,127,126,116);
	f4n(421,433,434,422, 0, 116,126,125,115);
	f4n(422,434,435,423, 0, 115,125,6,6);
	f4n(423,435,436,424, 0, 6,6,124,114);
	f4n(424,436,437,425, 0, 114,124,123,113);
	f4n(425,437,438,426, 0, 113,123,245,112);
	f4n(426,438,439,427, 0, 112,245,131,121);
	f4n(427,439,440,428, 0, 121,131,130,120);
	f4n(428,440,441,429, 0, 120,130,17,17);
	f4n(429,441,442,430, 0, 17,17,129,119);
	f4n(430,442,443,431, 0, 119,129,128,118);
	f4n(431,443,432,420, 0, 118,128,127,117);
	f4n(432,444,445,433, 0, 127,137,136,126);
	f4n(433,445,446,434, 0, 126,136,135,125);
	f4n(434,446,447,435, 0, 125,135,6,6);
	f4n(435,447,448,436, 0, 6,6,134,124);
	f4n(436,448,449,437, 0, 124,134,133,123);
	f4n(437,449,450,438, 0, 123,133,132,245);
	f4n(438,450,451,439, 0, 245,132,141,131);
	f4n(439,451,452,440, 0, 131,141,140,130);
	f4n(440,452,453,441, 0, 130,140,17,17);
	f4n(441,453,454,442, 0, 17,17,139,129);
	f4n(442,454,455,443, 0, 129,139,138,128);
	f4n(443,455,444,432, 0, 128,138,137,127);
	f4n(444,456,457,445, 0, 137,147,146,136);
	f4n(445,457,458,446, 0, 136,146,145,135);
	f4n(446,458,459,447, 0, 135,145,6,6);
	f4n(447,459,460,448, 0, 6,6,144,134);
	f4n(448,460,461,449, 0, 134,144,143,133);
	f4n(449,461,462,450, 0, 133,143,142,132);
	f4n(450,462,463,451, 0, 132,142,151,141);
	f4n(451,463,464,452, 0, 141,151,150,140);
	f4n(452,464,465,453, 0, 140,150,17,17);
	f4n(453,465,466,454, 0, 17,17,149,139);
	f4n(454,466,467,455, 0, 139,149,148,138);
	f4n(455,467,456,444, 0, 138,148,147,137);
	f4n(456,468,469,457, 0, 147,157,156,146);
	f4n(457,469,470,458, 0, 146,156,155,145);
	f4n(458,470,471,459, 0, 145,155,6,6);
	f4n(459,471,472,460, 0, 6,6,154,144);
	f4n(460,472,473,461, 0, 144,154,153,143);
	f4n(461,473,474,462, 0, 143,153,152,142);
	f4n(462,474,475,463, 0, 142,152,161,151);
	f4n(463,475,476,464, 0, 151,161,160,150);
	f4n(464,476,477,465, 0, 150,160,17,17);
	f4n(465,477,478,466, 0, 17,17,159,149);
	f4n(466,478,479,467, 0, 149,159,158,148);
	f4n(467,479,468,456, 0, 148,158,157,147);
	f4n(468,480,481,469, 0, 157,167,166,156);
	f4n(469,481,482,470, 0, 156,166,165,155);
	f4n(470,482,483,471, 0, 155,165,6,6);
	f4n(471,483,484,472, 0, 6,6,164,154);
	f4n(472,484,485,473, 0, 154,164,163,153);
	f4n(473,485,486,474, 0, 153,163,162,152);
	f4n(474,486,487,475, 0, 152,162,171,161);
	f4n(475,487,488,476, 0, 161,171,170,160);
	f4n(476,488,489,477, 0, 160,170,17,17);
	f4n(477,489,490,478, 0, 17,17,169,159);
	f4n(478,490,491,479, 0, 159,169,168,158);
	f4n(479,491,480,468, 0, 158,168,167,157);
	f4n(480,492,493,481, 0, 167,177,176,166);
	f4n(481,493,494,482, 0, 166,176,175,165);
	f4n(482,494,495,483, 0, 165,175,6,6);
	f4n(483,495,496,484, 0, 6,6,174,164);
	f4n(484,496,497,485, 0, 164,174,173,163);
	f4n(485,497,498,486, 0, 163,173,172,162);
	f4n(486,498,499,487, 0, 162,172,181,171);
	f4n(487,499,500,488, 0, 171,181,180,170);
	f4n(488,500,501,489, 0, 170,180,17,17);
	f4n(489,501,502,490, 0, 17,17,179,169);
	f4n(490,502,503,491, 0, 169,179,178,168);
	f4n(491,503,492,480, 0, 168,178,177,167);
	f4n(492,504,505,493, 0, 177,187,186,176);
	f4n(493,505,506,494, 0, 176,186,185,175);
	f4n(494,506,507,495, 0, 175,185,6,6);
	f4n(495,507,508,496, 0, 6,6,184,174);
	f4n(496,508,509,497, 0, 174,184,183,173);
	f4n(497,509,510,498, 0, 173,183,182,172);
	f4n(498,510,511,499, 0, 172,182,191,181);
	f4n(499,511,512,500, 0, 181,191,190,180);
	f4n(500,512,513,501, 0, 180,190,17,17);
	f4n(501,513,514,502, 0, 17,17,189,179);
	f4n(502,514,515,503, 0, 179,189,188,178);
	f4n(503,515,504,492, 0, 178,188,187,177);
	f4n(504,516,517,505, 0, 187,197,196,186);
	f4n(505,517,518,506, 0, 186,196,195,185);
	f4n(506,518,519,507, 0, 185,195,6,6);
	f4n(507,519,520,508, 0, 6,6,194,184);
	f4n(508,520,521,509, 0, 184,194,193,183);
	f4n(509,521,522,510, 0, 183,193,192,182);
	f4n(510,522,523,511, 0, 182,192,201,191);
	f4n(511,523,524,512, 0, 191,201,200,190);
	f4n(512,524,525,513, 0, 190,200,17,17);
	f4n(513,525,526,514, 0, 17,17,199,189);
	f4n(514,526,527,515, 0, 189,199,198,188);
	f4n(515,527,516,504, 0, 188,198,197,187);
	f4n(516,528,529,517, 0, 197,207,206,196);
	f4n(517,529,530,518, 0, 196,206,205,195);
	f4n(518,530,531,519, 0, 195,205,6,6);
	f4n(519,531,532,520, 0, 6,6,204,194);
	f4n(520,532,533,521, 0, 194,204,203,193);
	f4n(521,533,534,522, 0, 193,203,202,192);
	f4n(522,534,535,523, 0, 192,202,211,201);
	f4n(523,535,536,524, 0, 201,211,210,200);
	f4n(524,536,537,525, 0, 200,210,17,17);
	f4n(525,537,538,526, 0, 17,17,209,199);
	f4n(526,538,539,527, 0, 199,209,208,198);
	f4n(527,539,528,516, 0, 198,208,207,197);
	f4n(528,540,541,529, 0, 207,217,216,206);
	f4n(529,541,542,530, 0, 206,216,215,205);
	f4n(530,542,543,531, 0, 205,215,6,6);
	f4n(531,543,544,532, 0, 6,6,214,204);
	f4n(532,544,545,533, 0, 204,214,213,203);
	f4n(533,545,546,534, 0, 203,213,212,202);
	f4n(534,546,547,535, 0, 202,212,221,211);
	f4n(535,547,548,536, 0, 211,221,220,210);
	f4n(536,548,549,537, 0, 210,220,17,17);
	f4n(537,549,550,538, 0, 17,17,219,209);
	f4n(538,550,551,539, 0, 209,219,218,208);
	f4n(539,551,540,528, 0, 208,218,217,207);
	f4n(540,552,553,541, 0, 217,227,226,216);
	f4n(541,553,554,542, 0, 216,226,225,215);
	f4n(542,554,555,543, 0, 215,225,6,6);
	f4n(543,555,556,544, 0, 6,6,224,214);
	f4n(544,556,557,545, 0, 214,224,246,213);
	f4n(545,557,558,546, 0, 213,246,222,212);
	f4n(546,558,559,547, 0, 212,222,231,221);
	f4n(547,559,560,548, 0, 221,231,230,220);
	f4n(548,560,561,549, 0, 220,230,17,17);
	f4n(549,561,562,550, 0, 17,17,229,219);
	f4n(550,562,563,551, 0, 219,229,228,218);
	f4n(551,563,552,540, 0, 218,228,227,217);
	f4n(552,564,565,553, 0, 227,237,236,226);
	f4n(553,565,566,554, 0, 226,236,235,225);
	f4n(554,566,567,555, 0, 225,235,6,6);
	f4n(555,567,568,556, 0, 6,6,234,224);
	f4n(556,568,569,557, 0, 224,234,233,246);
	f4n(557,569,570,558, 0, 246,233,232,222);
	f4n(558,570,571,559, 0, 222,232,241,231);
	f4n(559,571,572,560, 0, 231,241,240,230);
	f4n(560,572,573,561, 0, 230,240,17,17);
	f4n(561,573,574,562, 0, 17,17,239,229);
	f4n(562,574,575,563, 0, 229,239,238,228);
	f4n(563,575,564,552, 0, 228,238,237,227);
	f4n(564,0,1,565, 0, 237,0,3,236);
	f4n(565,1,2,566, 0, 236,3,5,235);
	f4n(566,2,3,567, 0, 235,5,6,6);
	f4n(567,3,4,568, 0, 6,6,8,234);
	f4n(568,4,5,569, 0, 234,8,10,233);
	f4n(569,5,6,570, 0, 233,10,12,232);
	f4n(570,6,7,571, 0, 232,12,14,241);
	f4n(571,7,8,572, 0, 241,14,16,240);
	f4n(572,8,9,573, 0, 240,16,17,17);
	f4n(573,9,10,574, 0, 17,17,19,239);
	f4n(574,10,11,575, 0, 239,19,21,238);
	f4n(575,11,0,564, 0, 238,21,0,237);

    this.computeCentroids();
    this.computeNormals();
    
    function material_color( mi ) {
        var m = materials[mi];
        if( m.col_diffuse )
            return (m.col_diffuse[0]*255 << 16) + (m.col_diffuse[1]*255 << 8) + m.col_diffuse[2]*255;
        else if ( m.a_dbg_color )
            return  m.a_dbg_color;
        else 
            return 0xffeeeeee;
    }
    
    function v( x, y, z ) {
        scope.vertices.push( new THREE.Vertex( new THREE.Vector3( x, y, z ) ) );
    }

    function f3( a, b, c, mi ) {
        var material = scope.materials[ mi ];
        scope.faces.push( new THREE.Face3( a, b, c, null, material ) );
    }

    function f4( a, b, c, d, mi ) {
        var material = scope.materials[ mi ];
        scope.faces.push( new THREE.Face4( a, b, c, d, null, material ) );
    }

    function f3n( a, b, c, mi, n1, n2, n3 ) {
        var material = scope.materials[ mi ];
        var n1x = normals[n1][0];
        var n1y = normals[n1][1];
        var n1z = normals[n1][2];
        var n2x = normals[n2][0];
        var n2y = normals[n2][1];
        var n2z = normals[n2][2];
        var n3x = normals[n3][0];
        var n3y = normals[n3][1];
        var n3z = normals[n3][2];
        scope.faces.push( new THREE.Face3( a, b, c, 
                          [new THREE.Vector3( n1x, n1y, n1z ), new THREE.Vector3( n2x, n2y, n2z ), new THREE.Vector3( n3x, n3y, n3z )], 
                          material ) );
    }

    function f4n( a, b, c, d, mi, n1, n2, n3, n4 ) {
        var material = scope.materials[ mi ];
        var n1x = normals[n1][0];
        var n1y = normals[n1][1];
        var n1z = normals[n1][2];
        var n2x = normals[n2][0];
        var n2y = normals[n2][1];
        var n2z = normals[n2][2];
        var n3x = normals[n3][0];
        var n3y = normals[n3][1];
        var n3z = normals[n3][2];
        var n4x = normals[n4][0];
        var n4y = normals[n4][1];
        var n4z = normals[n4][2];
        scope.faces.push( new THREE.Face4( a, b, c, d,
                          [new THREE.Vector3( n1x, n1y, n1z ), new THREE.Vector3( n2x, n2y, n2z ), new THREE.Vector3( n3x, n3y, n3z ), new THREE.Vector3( n4x, n4y, n4z )], 
                          material ) );
    }

    function uv( u1, v1, u2, v2, u3, v3, u4, v4 ) {
        var uv = [];
        uv.push( new THREE.UV( u1, v1 ) );
        uv.push( new THREE.UV( u2, v2 ) );
        uv.push( new THREE.UV( u3, v3 ) );
        if ( u4 && v4 ) uv.push( new THREE.UV( u4, v4 ) );
        scope.uvs.push( uv );
    }

    function init_materials() {
        scope.materials = [];
        for(var i=0; i<materials.length; ++i) {
            scope.materials[i] = [ create_material( materials[i], urlbase ) ];
        }
    }
    
    function is_pow2( n ) {
        var l = Math.log(n) / Math.LN2;
        return Math.floor(l) == l;
    }
    
    function nearest_pow2(n) {
        var l = Math.log(n) / Math.LN2;
        return Math.pow( 2, Math.round(l) );
    }
    
    function create_material( m ) {
        var material;
        
        if( m.map_diffuse && urlbase ) {
            var texture = document.createElement( 'canvas' );
            
            material = new THREE.MeshBitmapMaterial( texture );
            var image = new Image();
            
            image.onload = function () {
                
                if ( !is_pow2(this.width) || !is_pow2(this.height) ) {
                
                    var w = nearest_pow2( this.width );
                    var h = nearest_pow2( this.height );
                    material.bitmap.width = w;
                    material.bitmap.height = h;
                    material.bitmap.getContext("2d").drawImage( this, 0, 0, w, h );
                }
                else {
                    material.bitmap = this;
                }
                material.loaded = 1;
                
            };
            image.src = urlbase + "/" + m.map_diffuse;
        }
        else if( m.col_diffuse ) {
            var color = (m.col_diffuse[0]*255 << 16) + (m.col_diffuse[1]*255 << 8) + m.col_diffuse[2]*255;
            material = new THREE.MeshColorFillMaterial( color, m.transparency );
        }
        else if( m.a_dbg_color ) {
            material = new THREE.MeshColorFillMaterial( m.a_dbg_color );
        }
        else {
            material = new THREE.MeshColorFillMaterial( 0xffeeeeee );
        }

        return material;
    }
}

Torus.prototype = new THREE.Geometry();
Torus.prototype.constructor = Torus;
